package org.jeecg.modules.wangyue.entity;

import java.io.Serializable;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 * @Description: 技师资质审核表
 * @Author: jeecg-boot
 * @Date:   2023-06-30
 * @Version: V1.0
 */
@Data
@TableName("tb_qualification_review_js")
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
@ApiModel(value="tb_qualification_review_js对象", description="技师资质审核表")
public class QualificationReviewJs {
    
	/**id*/
	@TableId(type = IdType.ASSIGN_ID)
    @ApiModelProperty(value = "id")
	private String id;
	/**用户id*/
	@Excel(name = "用户id", width = 15)
    @ApiModelProperty(value = "用户id")
	@NotBlank(message = "userId不能为空")
	private String userId;
	/**用户类型*/
	@Excel(name = "用户类型", width = 15)
    @ApiModelProperty(value = "用户类型")
	@NotBlank(message = "用户类型不能为空")
	private String userType;
	/**真实姓名*/
	@Excel(name = "真实姓名", width = 15)
    @ApiModelProperty(value = "真实姓名")
	@NotBlank(message = "真实姓名不能为空")
	private String realName;
	/**性别(0-未设置,1-男,2-女)*/
	@Excel(name = "性别(0-未设置,1-男,2-女)", width = 15)
    @ApiModelProperty(value = "性别(0-未设置,1-男,2-女)")
	@NotBlank(message = "性别不能为空")
	private String sex;
	/**是否会用智能手机(0-否,1-是)*/
	@Excel(name = "是否会用智能手机(0-否,1-是)", width = 15)
    @ApiModelProperty(value = "是否会用智能手机(0-否,1-是)")
	private String isUseSmartphone;
	/**出生年月*/
	@Excel(name = "出生年月", width = 20, format = "yyyy-MM")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM")
    @DateTimeFormat(pattern="yyyy-MM")
    @ApiModelProperty(value = "出生年月")
	@NotNull(message = "出生年月不能为空")
	private Date dateOfBirth;
	/**出生年份*/
	@Excel(name = "出生年份", width = 15)
	@ApiModelProperty(value = "出生年份")
	private int year;
	/**联系电话*/
	@Excel(name = "联系电话", width = 15)
	@ApiModelProperty(value = "联系电话")
	@NotBlank(message = "联系电话不能为空")
	private String phone;
	/**经度*/
	@Excel(name = "经度", width = 15)
	@ApiModelProperty(value = "经度")
	@NotBlank(message = "经度不能为空")
	private String log;
	/**维度*/
	@Excel(name = "维度", width = 15)
	@ApiModelProperty(value = "维度")
	@NotBlank(message = "维度不能为空")
	private String lat;
	/**所在地址名*/
	@Excel(name = "所在地址名", width = 15)
	@ApiModelProperty(value = "所在地址名")
	@NotBlank(message = "所在地址名不能为空")
	private String addressName;
	/**工作城市*/
	@Excel(name = "工作城市", width = 15)
	@ApiModelProperty(value = "工作城市")
	@NotBlank(message = "工作城市不能为空")
	private String city;
	/**服务类型(多种逗号隔开)*/
	@Excel(name = "服务类型(多种逗号隔开)", width = 15)
	@ApiModelProperty(value = "服务类型(多种逗号隔开)")
	@NotBlank(message = "服务类型不能为空")
	private String serviceTypeCode;
	/**工作经验*/
	@Excel(name = "工作经验", width = 15)
    @ApiModelProperty(value = "工作经验")
	private String workExp;
	/**工作经历*/
	@Excel(name = "工作经历", width = 15)
	@ApiModelProperty(value = "工作经历")
	private String workHistory;
	/**身份证*/
	@Excel(name = "身份证", width = 15)
	@ApiModelProperty(value = "身份证")
	private String idCard;
	/**真实头像正面照*/
	@Excel(name = "真实头像正面照", width = 15)
    @ApiModelProperty(value = "真实头像正面照")
	@NotBlank(message = "真实头像正面照不能为空")
	private String realHeadPicUrl;
	/**身份证正面*/
	@Excel(name = "身份证正面", width = 15)
    @ApiModelProperty(value = "身份证正面")
	@NotBlank(message = "身份证正面不能为空")
	private String idCardFrontUrl;
	/**身份证反面*/
	@Excel(name = "身份证反面", width = 15)
    @ApiModelProperty(value = "身份证反面")
	@NotBlank(message = "身份证反面不能为空")
	private String idCardBackUrl;
	/**视频认证*/
	@Excel(name = "视频认证", width = 15)
    @ApiModelProperty(value = "视频认证")
	@NotBlank(message = "视频认证不能为空")
	private String videoAuthUrl;
	/**职业证书*/
	@Excel(name = "职业证书", width = 15)
	@ApiModelProperty(value = "职业证书")
	private String workProveUrl;
	/**健康证*/
	@Excel(name = "健康证", width = 15)
	@ApiModelProperty(value = "健康证")
	private String healthProveUrl;
	/**审核状态(0-待审核,1-审核通过,2-驳回)*/
	@Excel(name = "审核状态(0-待审核,1-审核通过,2-驳回)", width = 15)
    @ApiModelProperty(value = "审核状态(0-待审核,1-审核通过,2-驳回)")
	private String reviewStatus;
	/**删除状态(0-正常,1-已删除)*/
	@Excel(name = "删除状态(0-正常,1-已删除)", width = 15)
    @ApiModelProperty(value = "删除状态(0-正常,1-已删除)")
	private String delFlag;
	/**创建时间*/
	@Excel(name = "创建时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建时间")
	private Date createTime;
	/**更新时间*/
	@Excel(name = "更新时间", width = 20, format = "yyyy-MM-dd HH:mm:ss")
	@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新时间")
	private Date updateTime;


	@ApiModelProperty(value = "短信验证码")
	@TableField(exist = false)
	@NotBlank(message = "短信验证码不能为空")
	private String phoneCode;


	@ApiModelProperty(value = "多个id逗号隔开")
	@TableField(exist = false)
	private String ids;
	@ApiModelProperty(value = "关键字")
	@TableField(exist = false)
	private String keywords;
}
